Businesses use workflow management to understand the processes carried out within their organizations, in order to improve efficiency and quality and to reduce costs. Georgakopoulos et al. have surveyed the main concepts and tools used in this field in an article entitled “An Overview of Workflow Management: From Process Modeling to Workflow Automation Infrastructure,” Distributed and Parallel Databases 3 (Kluwer Academic Publishers, Boston, Mass., 1995), pages 119-153, which is incorporated herein by reference.
Workflow management systems typically use a visual model of information flow for purposes of monitoring and managing the business processes within an organization. In the context of the present patent application and in the claims, a “process” is defined as a set of activities, also known in the art as actions or tasks, together with constraints on execution order among these activities. The order of the activities may vary from one execution of the process to another, and not all the activities in a given process are necessarily included in every execution. Thus, a single business process model may permit one execution that includes a given activity and another execution that does not. (An “execution” is a single run through the process, or an instance of the process.) Typically, processes are modeled as directed graphs, having nodes representing individual activities and edges representing dependencies or constraints among the activities. In other words, if there is a process execution in which activity A has to be executed before activity B, then an edge appears in the process graph from A to B.
Many businesses do not have a full model of the complex processes that go on within their organizations. Building such a model manually is prone to error and requires large investments of time by members of the business organization and/or consultants. There is therefore a need for tools that can automatically build business process models based on information gathered by computer systems within the enterprise. Agrawal et al. describe such a tool, for example, in “Mining Process Models from Workflow Logs,” in Advances in Database Technology—EDBT'98, Proceedings of the Sixth International Conference on Extending Database Technology (Springer Lecture Notes in Computer Science, 1998), pages 469-483, which is incorporated herein by reference. This tool analyzes a log of unstructured executions of a process in order to generate a graph that models the process.